/**
**********************************************************************************************************************************************************************************************************************************
* @file:	wrap.c
* @author:	zinface
* @date:	2021年11月12日 17:18:20 星期五
* @brief:	FinalMod 提供的测试示例主程序 - 使用 FinalMod_Module_WrapData 宏定义模块包装数据
**********************************************************************************************************************************************************************************************************************************
**/

// ---------------------- 主程序片段
#include <ModBuildin.h>
#include <stdio.h>

int	main(int argc, char **argv)
{
    ModStruct *wrap_ms = createModStructWithMeta("./libwrap.so", "wrap");

    // 尝试加载 wrap 模块
    if (modStructLoader(wrap_ms)) {
        // 尝试加载 wrap 模块的包装数据
        if (modStructLoaderFinalModWrap(wrap_ms)) {
            printf("%s - %s - %s\n", 
                wrap_ms->wrap->wrap_name, 
                wrap_ms->wrap->wrap_descript, 
                (char*)wrap_ms->wrap->wrap_data); // wrap 模块的包装数据为 char* 类型，直接强制转换
        }
    }
    // 卸载模块
    modStructUnloader(wrap_ms);

    return 0;
}
